package com.buyingtickets.dao;

import com.buyingtickets.entity.Train;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author bwj
 * @date 2021/6/24 9:09
 */
public interface TrainDao {
    /**
     * id查询列车
     * @param trainid
     * @return
     */
    Train queryByTrainID(int trainid);

    /**
     * id或者name查询列车
     * @param trainidname
     * @param page
     * @return
     */
   List<Train> queryByTrainIDOrName(@Param("name") String trainidname,@Param("page") int page);
    /**
     * 查询第page页列车
     * @param page
     * @return
     */
    List<Train> queryByTrainAll(int page);

    /**
     * 查询所有列车数
     * @return
     */
    int queryCount();

    /**
     * 条件查询所有列车数
     * @param trainidname
     * @return
     */
    int  queryCountByName(String trainidname);

    /**
     * 添加列车
     * @param tname 列车名
     * @param ttype 列车类型id
     * @param sid 起始站id
     * @param did 终点站id
     * @param sttype 运行状态id
     * @param mp 里程价格
     * @param dtime 出发时间
     * @return
     */
    boolean addTrain(@Param("tname") String tname,
                     @Param("ttype")int ttype,@Param("sid")int sid,
                     @Param("did")int did,@Param("sttype")int sttype,
                     @Param("mp")int mp,@Param("dtime")String dtime);

    /**
     * 查询最后一条插入记录 列车id
     * @return
     */
    int queryByTrainLast();
}
